home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
txl
/
rexxmdl2.lha
/
RexModula2
/
Phil.rmi
< prev
next >
Wrap
Text File
|
1992-02-26
|
1KB
|
63 lines
MODULE Phil;
FROM XdrM2_Phil IMPORT tAck,tReq,tFork;
IMPORT InOut;
CONST
pickup = 1;
putdown = 2;
VAR
ok: tAck;
req: tReq;
dummy: ARRAY [ 1..10000] OF LONGCARD;
PROCEDURE eat;
VAR
i,j: LONGCARD;
BEGIN
FOR i := 1 TO 10000 DO
FOR j := 1 TO 100 DO
dummy[i] := i*i DIV (j*i);
END;
END;
END eat;
PROCEDURE think;
VAR
i,j: LONGCARD;
r: LONGCARD;
BEGIN
FOR i := 1 TO 10000 DO
FOR j := 1 TO 100 DO
dummy[i] := i*i DIV (j*i);
END;
END;
END think;
BEGIN
LOOP
InOut.WriteString("thinking"); InOut.WriteLn();
think();
CALL(sit,req); WAIT (sit,ok);
InOut . WriteString ( "sitting" ) ; InOut . WriteLn ( ) ;
req.order := pickup;
CALL(left,req); WAIT(left,ok);
CALL(right,req); WAIT(right,ok);
InOut . WriteString ( "eating" ) ; InOut . WriteLn ( ) ;
eat();
CALL(leave,req); WAIT(leave,ok);
req.order := putdown;
CALL(left,req); WAIT(left,ok);
CALL(right,req); WAIT(right,ok);
END;
END Phil.